package cn.kgc.base;

import cn.kgc.utils.RedisUtil;

import javax.annotation.Resource;

@SuppressWarnings("all")
public class BaseInfoProperties {

    @Resource
    public RedisUtil redisUtil;

    public static final String SYMBOL_DOT = ".";       // 小圆点，无意义，可用可不用
    public static final String SYMBOL_COMMA = ",";     // 逗号，无意义，可用可不用
    public static final String SYMBOL_COLON = ":";     // 冒号，无意义，可用可不用

    public static final String PREFIX_BLACK = "black:";
    public static final String PREFIX_LIMIT = "limit:";
    public static final String PREFIX_MESSAGE_QUEUE_TAG = "sms_message_queue_tag:";

    public static final String USER_ADMIN = "admin";     // 管理员用户

    public static final String TOKEN_USER_PREFIX = "app";       // app端的用户token前缀
    public static final String TOKEN_SAAS_PREFIX = "saas";      // 企业saas平台的用户token前缀
    public static final String TOKEN_ADMIN_PREFIX = "admin";    // 运营管理平台的用户token前缀


    public static final String APP_USER_JSON = "app-user-json";       // app端的用户
    public static final String SAAS_USER_JSON = "saas-user-json";      // 企业saas平台的用户
    public static final String ADMIN_USER_JSON = "admin-user-json";    // 运营管理平台的用户


    public static final Integer COMMON_START_PAGE = 1;
    public static final Integer COMMON_START_PAGE_ZERO = 0;
    public static final Integer COMMON_PAGE_SIZE = 10;


    public static final String MOBILE_SMSCODE = "mobile:smscode";   //短信验证码Redis前缀
    public static final String REDIS_USER_TOKEN = "redis_user_token";
    public static final String REDIS_USER_INFO = "redis_user_info";


    public static final String REDIS_ADMIN_TOKEN = "redis_admin_token";
    public static final String REDIS_ADMIN_INFO = "redis_admin_info";

    public static final String SAAS_PLATFORM_LOGIN_TOKEN = "saas_platform_login_token";
    public static final String SAAS_PLATFORM_LOGIN_TOKEN_READ = "saas_platform_login_token_read";

    public static final String REDIS_SAAS_USER_TOKEN = "redis_saas_user_token";
    public static final String REDIS_SAAS_USER_INFO = "redis_saas_user_info";
    public static final String REDIS_SAAS_USER_INFO_TEMP = "redis_saas_user_info";

    // 某个字典code下所对应的所有字典列表
    public static final String REDIS_DATA_DICTIONARY_ITEM_LIST = "redis_data_dictionary_item_list";

    // 企业信息相关
    public static final String REDIS_COMPANY_BASE_INFO = "company_base_info";
    public static final String REDIS_COMPANY_MORE_INFO = "company_more_info";
    public static final String REDIS_COMPANY_PHOTOS = "redis_company_photos";
    public static final String REDIS_COMPANY_IS_VIP = "redis_company_is_vip";

    public static final String REDIS_COMPANY_TOP_INDUSTRY = "redis_company_top_industry";

    public static final String REDIS_COMPANY_TOP_INDUSTRY_LOCK = "redis_company_top_industry_lock";

    // 用户简历信息缓存前缀
    public static final String REDIS_RESUME_INFO = "redis_resume_info";
    // 查询简历信息分布式锁的前缀
    public static final String REDIS_RESUME_LOCK = "redis_resume_lock";
    // 缓存保存 HR最近7天已经邀约人数 的前缀
    public static final String REDIS_INTERVIEW_HR_INVITE_COUNT = "interview_hr_invite_count";
    // 缓存保存 求职者最近7天接受邀约次数 的前缀
    public static final String REDIS_INTERVIEW_JOBSEEKEY_WES_INVITE_COUNT = "interview_jobseeker_wes_invite_count";
    // 缓存保存 求职者最近7天拒绝邀约次数 的前缀
    public static final String REDIS_INTERVIEW_JOBSEEKEY_REFESHED_COUNT = "interview_jobseeker_refeshed_count";
    // 缓存保存 HR取消邀约次数 的前缀
    public static final String REDIS_INTERVIEW_HR_CANCEL_COUNT = "interview_hr_cancel_count";
    // 缓存保存 未读消息数量统计 的前缀
    public static final String REDIS_UNREAD_MSG_COUNT = "unread_message_counts";
    // 缓存保存 求职者最近7天收藏职位数量 的前缀
    public static final String REDIS_CAND_FOLLOW_HR_COUNT = "cand_follow_hr_counts";
    public static final String REDIS_MAX_RESUME_REFRESH_COUNTS = "max_resume_refresh_counts";
    public static final String ZK_MAX_RESUME_REFRESH_COUNTS = "max_resume_refresh_counts";
    public static final String CACHE_MAX_RESUME_REFRESH_COUNTS = "max_resume_refresh_counts";
    public static final String USER_ALREADY_REFRESHED_COUNTS = "user_already_refreshed_counts";
    public static final String REDIS_RESUME_EXPECT = "redis_resume_expect";

    public static final String DELAY_ERROR_RETRY_COUNTS = "delay_error_retry_counts";

    public static final String HR_COLLECT_RESUME_COUNTS = "hr_collect_resume_counts";
    public static final String HR_READ_RESUME_RECORD_COUNTS = "hr_read_resume_record_counts";
    public static final String WHO_LOOK_ME_COUNTS = "who_look_me_counts";
    public static final String CAND_FOLLOW_HR_COUNTS = "cand_follow_hr_counts";
    public static final String CAND_COLLECT_JOB_COUNTS = "cand_collect_job_counts";

    // HR的面试记录数
    public static final String HR_INTERVIEW_RECORD_COUNTS = "hr_interview_record_counts";
    // 候选人的面试记录数
    public static final String CAND_INTERVIEW_RECORD_COUNTS = "cand_interview_record_counts";

    // 职位信息
    public static final String REDIS_JOB_DETAIL = "redis_job_detail";
    public static final String HR_ALL_JOB_COUNTS = "hr_all_job_counts";

    public static final String CHAT_MSG_LIST = "chat_msg_list";

    // 文章阅读总数
    public static final String REDIS_ARTICLE_READ_COUNTS = "redis_article_read_counts";
    // 标记用户阅读，与article关系
    public static final String REDIS_USER_READ_ARTICLE = "redis_user_read_article";

    // 短视频的评论总数
    public static final String REDIS_VLOG_COMMENT_COUNTS = "redis_vlog_comment_counts";
    // 短视频的评论喜欢数量
    public static final String REDIS_VLOG_COMMENT_LIKED_COUNTS = "redis_vlog_comment_liked_counts";
    // 用户点赞评论
    public static final String REDIS_USER_LIKE_COMMENT = "redis_user_like_comment";

    // 我的关注总数
    public static final String REDIS_MY_FOLLOWS_COUNTS = "redis_my_follows_counts";
    // 我的粉丝总数
    public static final String REDIS_MY_FANS_COUNTS = "redis_my_fans_counts";
    // 博主和粉丝的关联关系，用于判断他们是否互粉
    public static final String REDIS_FANS_AND_VLOGGER_RELATIONSHIP = "redis_fans_and_vlogger_relationship";

    // 视频和发布者获赞数
    public static final String REDIS_VLOG_BE_LIKED_COUNTS = "redis_vlog_be_liked_counts";
    public static final String REDIS_VLOGER_BE_LIKED_COUNTS = "redis_vloger_be_liked_counts";

    // 用户是否喜欢/点赞视频，取代数据库的关联关系，1：喜欢，0：不喜欢（默认） redis_user_like_vlog:{userId}:{vlogId}
    public static final String REDIS_USER_LIKE_VLOG = "redis_user_like_vlog";

    public static final String PAYMENT_URL_CREATE_MERCHANT_ORDER = "http://172.17.172.127:9060/payment/createMerchantOrder";        // prod
    public static final String PAYMENT_URL_GET_WXPAY_QRCODE = "http://172.17.172.127:9060/payment/getWXPayQRCode";        // prod
    public static final String PAY_RETURN_URL = "http://172.17.172.127:6001/tradeOrder/notifyMerchantOrderPaid";             // prod

}
